/**
 * Copyright (c) 2021 OceanBase
 * OceanBase Migration Service LogProxy is licensed under Mulan PubL v2.
 * You can use this software according to the terms and conditions of the Mulan PubL v2.
 * You may obtain a copy of Mulan PubL v2 at:
 *          http://license.coscl.org.cn/MulanPubL-2.0
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PubL v2 for more details.
 */

#include "gtest/gtest.h"
#include "common.h"
#include "counter.h"
#include "log.h"
#include "guard.hpp"

using namespace oceanbase::logproxy;

TEST(defer, defer)
{
  CounterStatistics _counter;
  defer(if (_counter.is_run()) {
    printf("%s", "defer执行");
    _counter.stop();
  });

  _counter.register_gauge("delay", [this]() { return 1; });
  _counter.start();
  sleep(1);
}